10日でおぼえるJavaScript入門教室

キーフレーズ

JavaScript HTML document オプジェクト var 文字列 script function 要素 text 関数 メソッド プログラム Ajax 場合 イベントハンドラ CSS DOM html http head jQuery プロバティ データ javascript false Web コンストラクタ オブジェクト ノード JSONP プラウザ this () http:// style ファイル 使っ 変数 実行 時限 Prototype length type value JSON Math lang ipt body photos 表示 prototype address return XMLHttpRequest true content transitional charset グローバル変数 new サンプル htm コード 引数 -2 height background outputdiv Content DTD get 使う getE JavaSc 配列 img caption dojo meta 正規表現 ソースコード border dataset xhtmll コールバック API Date output Number XHTML DOCTYPE src サーバー マッシュアップ css dOjO

目次

CONTENTS 0 ①② 3 オリエンテーション JavaScript の過去・現在・未来 JavaSc 「 ipt プログラミングに必要なもの 本書の使い方 XVI はじめての JavaScript 1 2 1 時限目 He110, world! 日付と時間 2 時限目 変数・配列・オプジェクト・関数 変数と配列 1 時限目 オブジェクト 2 時限目 関数 3 時限目 0 0 8 2 3 3 ロ OM を使う 1 時限目 DOM と HTML 2 時限目ノードを作る 3 時限目ノードを削除する 45 6 2 0 4 5 6

0 ⑨ 0 ② 0 JavaScript で計算をする 67 1 時限目数値と文字列 2 時限目数値の計算 68 76 CSS と JavaScript 1 時限目 CSS とは 2 時限目 HTML 要素の表示 / 非表示の切り替え 3 時限目 HTML 要素の大きさを変える 85 6 8 4 8 9 0 JavaScript プログラミングの新しいスタイル 1 時限目じゃまにならない JavaSc 「 ipt 2 時限目オブジェクト指向 JavaSc 「 ipt 1 09 ・・・ 1 1 0 ・・・ 1 20 総合制作 I 1 時限目簡単なデータベース 2 時限目プルダウンメニュー形式のフォトアルバム 1 35 ・・ 1 36 ・・ 148 Ajax の基本 1 57 1 時限目 Ajax のしくみ 2 時限目簡単な Ajax ・・ 1 58 ・ 1 64

JavaScript ライプラリ 1 時限目 Prototype 2 時限目 Dojo 3 時限目 jQuery 総合制作Ⅱ 1 時限目住所入力の自動補完 ~ Web サービスと JSONP 2 時限目 JSONP を使ったマッシュアップ ~ 楽天十価格.com 0 索引 0 1 75 ・ 176 1 88 ・ 1 98 209 21 0 220 234

:selected 205 :submit 80 205 backg 「 ound 91 , 93 . text body 要素→ document. body 80 :visible 204 49 Boo an オブジェクト 82 ワ・ 232 33 82 @impo 「 t 90, い 6 bo 「 de 「 9 1 , 96 58 [att 「 ibute] 204 b otto m left 93 [att 「 ibute!=value] 203 204 bottom 「 ight 93 [att 「 ibute$=value] $ ( ) (jQuery) 203 204 [att 「 ibute*=value] $ ( ) (P 「 ototype) ] 83 [att 「 ibuteA=value] ca Ⅱオブジェクト 1 84 204 42 [att 「 ibute=value] $ (document) . 「 eady ( ) 207 204 camelCase 25 [selecto 「 1 ] Cselecto 「 2] [selecto 「 N] catch ( ) $ each ( ) 208 65 $. getJSON ( ) 208 204 93 cente 「 ] 84 1 1 8 childNodes 49 69 Class ℃「 eate ( ) $SUPe 「 ] 79 ] 78 69 click ( ) 82 207 204 69 COIO 「 . animated ] 96 button 205 70 Colo 「 Palette 70 concat ( ) 205 VD 27 ℃ heckbox ℃ hecked 205 69 36 const 「 uctO 「 :contains (text) 69 c 「 eate 曰 ement ( ) 56 204 69 c 「 eateTextNode ( ) disabled 205 56 70 CSS 86 204 . empty 70 CSS を使ったデザインテーマ :enabled 205 VS ] 96 69 css ファイル 90 204 70 Cu 「「 encyTextBox 1 96 204 :even 205 8 進数 204 fi 「 st ] O 進数 73 DateTextBox ] 95 :fi 「 st-child 205 ・ gt (index) 73 Date オブジェクト 16 進数 204 ・ has (selecto 「 ) DHTML 46 Dialog ] 96 :heade 「 :hidden ( 可視性によるフィルタ ) 204 action 属性 158 Dijit ] 95 ActiveXObject ( ) 160 Dijit at a GIance ・ hidden ( フォーム要素 ) ] 96 205 ActiveX オブジェクト 159 display 102 205 :lmage addClassName ( ) d ⅳ要素 ] 76 94 205 :input 1 58 document 47 204 Ajax :last Ajax. Request ( ) 1 76 document. bOdy 49 205 :last-child document. get 曰 ementById ( ) 1 4 :lt (index) Ajax ライブラリ 204 → get 曰 ementById ( ) not (selecto 「 ) → JavaSc 「 ipt ライブラリ 1 75 48 204 :nth-child (index/even/odd/equation) ale 「 t ( ) 5 , 7 document. get 曰 ementsByTagName ( ) append ( ) → get 曰 ementsByTagName ( ) 207 205 appendChiId ( ) 56 48 , 102 204 appendTo ( ) 207 DOjO ] 88 205 39 DOjO CO 「 e ] 88 204 a 「 guments 25 dOjO. addOnLoad ( ) 1 95 205 33 dOjO. byld ( ) A 「「 ay オブジェクト 195 205 d0j0. decla 「 e ( ) att 「 ( ) 206 205 ] 88 十 記号・数字 :odd :only-child . pa 「 ent :passwo 「 d : 「 adiO : 「 eset

索引 1 60 ] 60 144 74 Mic 「 osoft.XMLHTTP 58 MochiKit 58 moo. fX 1 61 . 1 74 M00T00 69 Msxm12. XMLHTTP 1 4 , 144 MySQL NaN NEGATIVE INFINITY 1 79 Netflix 20 new 175 nextSibIing 28 nodeValue ] 98 no- 「 epeat 203 null Numbe 「 ( ) 1 99 Numbe 「オブジェクト 208 208 147 , Object ( ) 1 6 ] , 2 い , 2 1 7 onabo 「 t onb 旧「 64 onchange onclick 27 , ] 53 onclick プロバティ 90, ] ] 6 25 ondblclick one 「「 0 「 onfocus ] 55 onkeydown 9 1 , 96 onkeyp 「 ess 97 onkeyup 72 onload 80 onmousedown 33 , 80 onmousemove 80 onmouseout 33 , 80 onmouseove 「 80 onmouseup 80 on 「 eadystatechange 80 on 「 eset on 「 eslze 33 , 8 1 onselect 80 onsubmit 80 onunload 田 open ( ) option 要素 33 , 80 80 padding pa 「 entNode pa 「 seFIoat ( ) 33 , 81 80 pa 「 selnt ( ) 80 pop ( ) 8 1 POSITIVE INFINITY 33 p 「 epend ( ) 旧 EE754 形式 230 if-else 文 230 if 文 1 95 if 「 ame 要素 1 94 46 indexOf ( ) ix, 46 inne 「 HTML insertBefo 「 e ( ) isNaN ( ) 196 JavaSc 「 ipt 2. O 2 い , 21 6 javasc 「 ipt: 33 JavaSc 「 ipt ライブラリ join ( ) 1 70 jQue 「 y ] 86 33 jQue 「 y ( ) 72 jQue 「 Y IJI jQuery. ajax ( ) jQuery. getJSON ( ) xiv, 20 JSON 64 JSONP 93 lastChild 231 103 length 23 link 要素 lowe ℃ amelCase 50 m ( 正規表現のフラグ ) 1 7 ma 「 gln 1 8 ma 「 gin-top 48 match ( ) Math. abs ( ) Math ℃ eil ( ) 48 , 1 02 1 7 Math. cos ( ) 1 7 Math. E 1 7 Math. exp ( ) 1 7 Math. 利00 「 ( ) 1 8 Math. LN 1 0 1 7 Math. LN2 Math.Iog ( ) ] 58 Math. LOGI OE ] 62 Math. LOG2E Math. max (a,b) 36 Math. min (a,b) Math. PI 91 , 108 Math. 「 andom ( ) 206 刈 Math. 「 ound ( ) 65 Math. sin ( ) Math. sqrt ( ) XIII Math. SQRTI 2 1 58 Math. SQRT2 Math. tan ( ) Math オプジェクト 155 dOjO. iO. sc 「 ipt dOjO. iO. sc 「 ipt. get ( ) dOjO. que 「 Y ( ) dOjO. 「 equi 「 e ( ) DOM API DOM スクリプティング Edito 「 else if 文 em encodeURl ( ) E 「「 o 「オブジェクト eva ば ) evalJSON ( ) Event オブジェクト exec ( ) Fi 「 ebug fi 「 stChild fixed float fO 「 -in 文 fo 「文 Function ( ) g ( 正規表現のフラグ ) getAtt 「 ibute ( ) getDate ( ) getDay ( ) get 曰 ementById ( ) get 曰 ementsByTagName ( ) getFuIlYea 「 ( ) getHou 「 s ( ) getMinutes ( ) getMonth ( ) getUTCDay ( ) getUTCFuIlYea 「 ( ) GET メソッド GoogIe マップ hasOwnP 「 ope 「 ty ( ) height html() HTML5 HTML DOM API HTML 工デイタ HTTP プロトコル 2 4 2 5 4 9 3 8 2 4 7 7 6 1 6 4 9 5 7 7 CD 8 広 ) 3 0 3 8 9 2 8 6 8 8 4 8 8 8 6 8 8 8 8 8 1 9 9 9 9 9 0 2 ( 0 5 0 0 6 L.O 8 2 8 8 8 8 8 8 6 4 4 4 7 4 7 9 6 7 7 2 7 0 2 9 i ( 正規表現のフラグ )

p 「 ependTo ( ) P 「 0t0type ( オプジェクト ) P 「 ototype ( ライブラリ ) P 「 OXY pt PUSh() PX RDBMS 「 eadyState 「 eadystatechange イベント RegExp ( ) 日 egExp オブジェクト 「 emove ( ) 「 emoveChild ( ) 「 epeat-x 「 epeat-y 「 eplace ( ) 「 esponseText 「 esponseXML 「 etu 「 n 「 etu 「 n false 「 eve 「 se ( ) RGB 値 RiCO Sc 「 iptaculous sea 「 ch ( ) selectedlndex select 要素 send ( ) setAtt 「 ibute ( ) setRequestHeade 「 ( ) show ( ) slice ( ) so 「 t ( ) span 要素 SQL status St 「 ing ( ) St 「 ing オブジェクト style style 要素 submit7fi タン subst 「 ing ( ) switch 文 text ( ) this this. fO 「 rn TimeTextBox toDateSt 「 ing ( ) toFixed (n) 207 33 toLocaIeDateSt 「 ing ( ) toLocaIeSt 「 ing ( ) 176 toLocaIeTimeSt 「 ing ( ) ] 6 1 9 1 tOP 「 ight tOSt 「 ing ( ) 27 , ] 43 toTimeSt 「 ing ( ) 9 1 t 「 y-catch 文 144 typeof ] 43 undefined 33 , 70 Uppe ℃ ameICase U 工ンコード 207 64 UTF-8 93 ] 56 value valueOf ( ) 159 159 va 「 40 28 W8C 92 Web API Web サービス x, ] 77 WHATSWG width x, 1 77 window. onload 155 → onload window オプジェクト ] 52 ] 52 50 X-JSON ヘッダ 1 60 XML XMLHttpRequest オプジェクト 1 76 29 28 XML 文書 95 XPath 144 XSLT 160 33 Yahoo! げ 102 90, ] 58 イベント 69 引用符 83 インラインフレーム インライン要素 工スケープシーケンス 3 1 , 63 工スケープ文字 143 工ンコード ] 96 1 8 演算誤差 74 演算子 1 8 1 8 オブジェクト型 93 オブジェクト検知 親ノード 1 6 , 74 返し値 65 , い 9 22 価格℃ om API JSONP 隠しフレーム カスタムオブジェクト カプセル化 1 4 , 22 25 仮引数 関数 2 ] 6 169 関数型 XII, 関数リテラル 1 6 キー 1 4 疑似プロトコル 刈 クラス 2 ] O クラス継承 クロージャ 2 1 0 刈 グローバルオブジェクト グローバルスコープの汚染 91 , 108 グローバル変数 ] 52 9 クロスプラウザ 42 け 継承 (CSS) 継承 ( オブジェクト ) 1 85 1 59 コア DOM API 86 後方互換性 コールバック関数 203 86 子ノード コメント コンストラクタ サーバーサイドスクリプト言五 147 4 サプクラス 37 59 差分プログラミング 23 ] 三項演算子 1 74 232 95 参日刀 23 68 式 68 識別子 指数 21 1 8 ] 実行コンテクスト 80 お 23 ] 1 8 47 か 40 229 1 74 32 1 20, 1 2 1 39 7 23 22 IJ き 29 20 く 37 37 , 1 78 ] 32 42 1 20 4 ] 1 72 97 35 65 ] 60 1 6 1 47 5 30 い さ し 2 4 4 2 2 2 7 4 4

索引 文字列リテラル 戻り値 ユーザー定義オブジェクト 郵便番号検索 JSONP 173 , 216 , 230 25 ユ二コード 22 , 25 97 要素 29 要素ノード 予約語 9 1 ライブラリ→ JavaSc 「 ipt ライブラリ 158 175 楽天ウエプサービス 32 227 145 リテラル 22 リレーショナルデータベース 204 ] 44 22 22 例外 74 例外処理 レコード ⅱ 8 連想配列 1 99 7 ローカル変数 95 論理演算子 37 論理式 9 1 80 6 実行文 じゃまにならない JavaSc 「 ipt 条件式 数値型 数値リテラル スーパークラス スコープ スコープチェーン スタイルシート ステートメント ひ 引数 ピクセル 正規表現 70, 143 , 1 55 正規表現リテラル 非同期処理 1 43 9 1 ビルトインオブジェクト セレクタ 言 (CSS) 宣言 ( 変数 ) フィールド フィルタ 50 ブール型 フォーム 複合型 ダイナミック HTML 46 浮動小数点 ブラウザ検知 ダイナミック sc 「 ipt タグ ] 6 1, 2 1 1 23 プラグイン (jQue 「 y) 代入 プリミティフ型 多態性 1 29 プロキシ プロック プロック要素 1 63 プロトタイプ継承 プロバティ (CSS) プロバティ ( オブジェクト ) ] 3 , 47 文 データ型 変数 データベース ] 36 , 144 テーブル 145 テキストノード 80 ポイント テキストボックス ボックスモデル ポリモーフィズム 同一ドメイン制限 同一文書内リンク 無名関数 同期処理 158 ドキュメントオブジェクト 32 トップレベル メソッド メタ文字 名前空間 名前の競合 文字コード モジュール ネストされた関数 文字列型 1 31 22 , 68 40 6 ノード 58 22 バース 22 配列 37 配列型 41 配列リテラル 42 ハック 86 ハッシュ の は ゆ す 32 2 1 6 XII よ 5 6 4 2 4 2 ら せ り そノた れ 5 5 5 2 6 6 4 3 2 9 2 ろ ちッっ一て 2 2 4 8 2 9 3 ほ 1 4 9 1 95 ] 29 と む め 38 80 72 な 43 も ね 1 88 22

奥付

著者紹介 ◎ 岡田克司 おかだかっし ・落丁・乱丁はお取り替えいたしますので、 03-5362-3705 までこ連絡くだ ずに、いかなる方法においても無断で複写、複製することを禁じます。 フトウェアおよびプログラムを含む ) 、株式会社翔泳社から文書による許諾を得 ・本書は著作権上の保護を受けています。本書の一部または全部について ( ソ ◎ 2008 KATSUSHI OKADA 印刷・製本日経印刷株式会社 (http://www.shoeisha. CO. jp/) 発行所株式会社翔泳社 発行人佐々木幹夫 著者岡田克司 2008 年 2 月 4 日初版第 1 刷発行 新 Jav Scri t 入 5 教室 1 日でおほえる DTP オペレーション有限会社テクスト ブックデザイン株式会社アレフ・ゼロ ( 宇田俊彦 / 鈴木住枝 ) http://www.shoeisha.com/book/hp/IOdays/ にて訂正内容をお知らせいたします。こ利用ください。 ドや本文の誤記などで訂正が発生した場合には、下記ホームページ 本書の内容確認には十分気を付けていますが、万一プログラムコー 「 1 0 日でおぼえる」のホームページ (2001 年 ) 、「逆引き JavaSc 「 ipt 」 ( 2003 年 ) ( いずれも工学社 ) など。 およびウクレレ演奏、写真、チェス、天体観測など。沖縄小林流空手 ] 級。主な著書に「基礎からの JavaSc 「 ipt 」 最近興味のあるテーマは集合知・データマイニングなど。趣味は旅行、オペラ鑑賞、映画鑑賞、三線 ( さんしん ) (SAS 、 RATS 、 Stata 、 Gauss) をはじめ、 SQL 、 PHP 、 VisuaI Basic 、 Java 、 C + + 、 VBA 、 RubY など。 サイトを作りはじめ、趣味が高じて独学で JavaSc 「 ipt を習得。プログラミング経験は専門の統計プログラミング 攻分野は計量経済学・国際経済学 ) 。現在アメリカ・カリフォルニア州べイエリア在住。 1 995 年から趣味で Web 愛知県生まれ。東京外国語大学卒業。大手銀行勤務を経てミシガン州立大学大学院へ留学 ( 経済学 Ph. D 課程 : 専 さい。 ・本書の内容に関するお問い合わせについては、 ンに従った方法でお願いします。 ー SBN978-4-7981-1434-7 オ : 書 ii / ヾ ージ記載のガイドライ P 「 inted in Japan